1. Field of the Invention
The present invention relates to an image processing apparatus and method wherein reading position errors in a bit-map formation of image data, which has been read or scanned through a reading device such as a light-to-electricity converting device, are detected, or a speed at which an original image is read or scanned is measured, and/or thus-detected reading or scanning position errors or the reading or scanning speed errors, in a sub-scan direction, for example, are compensated for. Such an art may be applied to a copy machine (or a copier), a facsimile machine and so forth, so that reading position errors occurring when reading an original image may be detected and corrected. Thereby, the original image can be precisely read or scanned, or the read image can be appropriately corrected, and thus the read image data is precisely output without image distortion or degradation.
2. Description of the Related Art
As a first example of the related art, Shunsuke Hattori et al. disclose A Development of Image Scanner of High Resolution in the Japan Society of Mechanical Engineers, 71st ordinary general meeting, lecture meeting, lecture paper collection (IV). Therein, an interpolation operation is performed on image data which is obtained as a result of reading a test chart having even-pitch lines arranged therein in a sub-scan direction. That image data is image data which is discrete in those sub-scan direction line intervals. From the interpolation operation result, the central positions of black lines and white lines of the even-pitch lines are obtained. Then, differences between the central positions and the reference pitch of the test chart are read. Thereby, image data reading position errors due to apparatus vibration or the like are detected.
As a second example of the related art, Japanese Laid-Open Patent Application No. 6-297758 discloses A Scan-line Pitch Measuring Method. Therein, a pattern of a hard copy having even-pitch pattern data written therein is read. Thereby, unevenness in pitches of scan lines which are used in a hard-copy apparatus is measured.
In the above-described first example of the related art, due to possible spatial differences between the edges of the even-pitch lines and sampling positions, `moire` may occur wherein a difference occurs between data which has been obtained as a result of reading the same pattern. Due to the moire, thus-obtained read data may not be data which indicates positions corresponding to the edges of the pattern. Thereby, an accuracy in measuring reading position errors may be degraded. Such an adverse effect is very noticeable when the even-pitch line pattern is so fine as to approximate the resolution of the reading apparatus. As a result, the measuring of reading position errors may not be performed. Thus, using this method, it is not possible to measure, with a high accuracy, reading position errors of a pattern which is so fine as to approximate or to be more than the resolution of the reading apparatus.
Further, because an even-pitch line pattern is used, even if the effect of moire is ignored, in a case where the pitch of the pattern is fine for measuring reading position errors of a high-frequency component, due to the limitation of the MTF (Modulation Transfer Ratio) of the image formation system, a difference in a signal indicating image tone is disadvantageously reduced. Thus the measuring accuracy is degraded.
It is considered that, in the case where the pitch of the pattern is finer, the measuring frequency band is widened to a higher frequency. Thereby, it is not possible to provide a high measuring accuracy. Therefore, in order to solve this problem, the sampled data is made to undergo an interpolation operation. In order to improve the effect of the interpolation operation, it is necessary to increase an amount of surrounding data to be processed. As a result, a longer time is required for the operation. Further, the interpolation operation inherently may not provide true data, and thus the measuring accuracy may be degraded. Further, in the first example, image data to be used is obtained as a result of a specific light-reception element of the light-to-electricity converting device being used to scan the pattern in the sub-scan direction. The light-reception element itself may provide noise which may degrade the measuring accuracy.
In the above-described method in the second example of the related art, when measuring, the light-to-electricity converting device is used to read the pattern and thus-obtained data is used. Therefore, in this method, at this time, reading or scanning unevenness when reading or scanning the hard copy is not considered in measuring pitch unevenness in the pattern of the hard copy. Thus, high accuracy measuring may not be achieved. Further, this method also has a `moire` problem similar to that which occurs in the above-described first example of the related art.
Generally speaking, for example, in a line scanning image reading apparatus wherein a plurality of R, G, B image sensors are arranged so that the R, G, B sensors are separate in the sub-scan direction and are in parallel, there is a time difference between reading of image data read through the respective image sensors when those sensors read the same position in an original image. Therefore, it is necessary to perform correction on the obtained image data such that the respective sensors may provide the image data of the same position in the original image at the same time. Otherwise, color deviation may occur in color image reading, and thus it is not possible to precisely read color. Such color deviation is defined according to the distances between the respective sensors and according to the sensor scanning speed. Possible unevenness in the sensor scanning speed may cause color deviation in the color image reading.
In order to eliminate such a problem, for example, Japanese Laid-Open Patent Application No. 6-22159 discloses an art wherein a microprocessor counts internal clock pulses in an interval between pulses which are generated by a motor which drives a reading carriage. The microprocessor obtains the motor driving speed from the number of the counted clock pulses. The thus-obtained motor driving speed is considered to correspond to an actual scanning speed. Based on the actual scanning speed, timing errors or reading position errors occurring between the respective sensors are compensated for. In this method, the data from upstream sensors is corrected with respect to the data from downstream sensors so that the reading position errors between the data from the respective sensors may be compensated. Thus, color deviation due to the reading position errors may be prevented. In this correction/compensation, for a delay amount which corresponds to a length less than one scan line, the data is obtained as a result of performing a weighting average using the front and rear data.
In this art, the sub-scan direction scanning speed is detected from the rotation speed of the reading carriage driving motor. In a case where the reading apparatus is of a type wherein an image placed on a plane is scanned and is thus read, there should be a power transmission mechanism which converts the rotation motion of the motor into the linear motion for driving the reading carriage. Such a power transmission mechanism may inherently cause unevenness in the transmitted driving speed. There may be difference between possible unevenness in the rotation speed of the driving motor and possible unevenness in the linear speed of the reading carriage. Therefore, it may not be possible to precisely detect the actual scanning speed. As a result, the data, indicating the scanning speed, obtained in this method may not be suitable for compensating for the reading position errors due to the spatial difference between the respective sensors.
Further, in this art, the data from the upstream sensors are corrected with respect to the data from the downstream sensors as mentioned above. Therefore, the data from the downstream sensors are not changed. If the reading scanning speed accidentally varies, the reading position differs from a reading position in a case where the reading scanning speed did not vary. Because the data from the downstream sensors are not changed in the correction/compensation operation as mentioned above, such a reading scanning speed variation causes undesirable expansion/contraction in the read image.
In other words, in this art, only the data from the upstream sensors is corrected when such a reading scanning speed variation occurs. Therefore, it is possible to prevent color deviation from occurring. However, it is not possible to prevent extraction/contraction from occurring in the overall color image due to the reading scanning speed variation. Thus, reading position errors remain. Further, in this art, the correction/compensation operation is performed on the assumption that the distances between the respective sensors are fixed, and this art cannot be applied to a reading apparatus which uses only a single sensor.
Japanese Laid-Open Patent Application No. 63-287167 discloses a method for obtaining image data which does not include reading position errors due to reading scanning speed variation. In this method, a position sensor is provided in close proximity to an original image. By using the output of the position sensor, image sensor reading timing is controlled. However, in this method, the reading timing may vary accordingly. Thereby, the CCD charge time varies, and thus the apparent sensitivity thereof varies. Therefore, it is necessary to correct the sensitivity.
Further, in this method, in a case where an image processing operation, such as a filtering operation, a halftone processing operation or the like, is performed on a plurality of scan lines, when intervals between the scan lines differ from each other due to the above-mentioned reading time variation, a problematic situation occurs. That is, such scan line interval differences may not be compensated for because, ordinarily, a clock synchronization system is used there. In order to compensate for the scan line interval difference, a buffer memory is required for this purpose.